home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 033a / prokit34.zip / TIPS.DOC < prev    next >
Text File  |  1991-04-01  |  8KB  |  162 lines

  1.  
  2. ProKit Door Writing Tips                                (C) 1988 S.H.Smith
  3. ------------------------                                ProKit 2.8, 8/4/88
  4.  
  5. +  Do all output with DISP, DISPLN and NEWLINE functions.
  6.  
  7. +  Do NOT use Borland's CRT unit.  The CRT unit will lock up in some
  8.    multi-task systems, and does not communicate.
  9.  
  10. +  Use one of the provided input functions to read from the user
  11.       GET_CMDLINE   - for command lines
  12.       INPUT         - for lines with length limits
  13.       GET_KEY       - for single characters (no echo)
  14.  
  15. +  Use the supplied functions to select one of the seven basic colors
  16.       aRED, aGREEN, aBLUE, aCYAN, aMAGENTA, aWHITE, aGRAY.
  17.    These can be used at any time (even in non-graphic mode).
  18.  
  19. +  Use these functions ONLY when in GRAPHICS mode:
  20.       POSITION(x,y);
  21.       CLEAR_SCREEN;
  22.       CLEAR_EOL;
  23.  
  24. +  Check the GRAPHICS flag before sending any ANSI codes to the user;
  25.    some users won't accept ansi codes.
  26.  
  27. +  Check the DUMP_USER flag in all major program loops.  This flag is set
  28.    if the user hangs up, his time runs out, or if the sysop wants to dump
  29.    the caller out of the door.
  30.  
  31. +  Always call UNINIT before calling HALT to terminate a door program.  
  32.    Otherwise the dangling interrupt handlers will crash the system.
  33.  
  34. +  The first line of a ProKit config files must be the com driver type.
  35.    This can be one of:
  36.       INTERRUPT         ;the best, fastest
  37.       BIOS              ;if interrupts fail to work
  38.    Your door program is free to re-open the config file and read additional
  39.    information from it.
  40.  
  41. +  ProKit based doors can be tested with a special "local sysop" mode of
  42.    operation.  In this mode, you need not load PCBoard to run the door.
  43.    This option is selected by adding 'LOCAL' to the end of the door
  44.    command line.  For example:
  45.       prokit prokit.cnf \pcb2 LOCAL
  46.    will run the ProKit demo door in sysop-local mode directly from DOS.
  47.  
  48. +  The standard DOOR script for ProKit doors has this format:
  49.       echo off
  50.       cd \pro
  51.       prokit prokit.cnf c:\pcb2
  52.       cd \pcb2
  53.       if exist event.bat event               <<<--- take note
  54.       board
  55.    Notice line 5.  This line will start your timed event if needed.  Any
  56.    door that can logoff a user (during carrier loss or with goodbye) has
  57.    the possibility of starting the event.
  58.  
  59. +  The F5 (shell to DOS) function will only work if you leave enough 
  60.    free ram for a new copy of COMMAND.COM to be loaded.  To do this, you
  61.    need to include this directive in your main program:
  62.       {$M 12000,40000,40000}  {Stack, minheap, maxheap}
  63.    Adjust the values to your needs, but limit the MAXHEAP setting to the
  64.    smallest value that is needed.  This leaves the rest of memory available
  65.    for the shell.
  66.  
  67. +  Take a look at the sample door - PROKIT.PAS - it has examples of how
  68.    to use many of ProKit's features.
  69.  
  70. +  Call the function load_cnames_file during your door initialization if
  71.    you are going to access the conf_info data structure.  This is no
  72.    longer automatically loaded, speeding up doors that have no interest
  73.    in this data.
  74.  
  75. +  The new pdisp and pdispln procedures allow "macros" to be expanded.
  76.    Here is a list of the macros that are available:
  77.  
  78.    All display files can refer to special "macros" that are possibly
  79.    different for each caller.  ProDoor supports both PCBoard-compatible
  80.    @ macros as well as it's own unique $ macros.
  81.  
  82.       MACRO                MEANING
  83.  
  84.       $2$                  used in PROTRNS
  85.       $3$                  used in PROTRNS
  86.       $4$                  used in PROTRNS
  87.       $5W$                 used in PROTRNS
  88.       $6W$                 used in PROTRNS
  89.       $7L$                 used in PROTRNS
  90.       $8S$                 used in PROTRNS
  91.       $@$                  file list pathname for dsz
  92.       $B$                  modem open baud rate
  93.       $BLUE$               the color blue
  94.       $C$                  connect bps
  95.       $CLREOL$             clear to end of line
  96.       $CONF$               conference number with mail waiting
  97.       $CONFNUM$            current conference number
  98.       $CYAN$               the color cyan
  99.       $DEFAULT$            the default color
  100.       $DISP-fname$         display specified text file
  101.       $FIRST$              callers first name
  102.       $HELPFILE$           interpret remainder of file as a multi-topic HELP
  103.                            file
  104.       $GRAY$               the color gray
  105.       $GREEN$              the color green
  106.       $IFMEMBER-nn$        YES or NO is the caller a member of specified
  107.                            conference number
  108.       $LASTMSGNO$          high message number
  109.       $MAGENTA$            the color magenta
  110.       $MAIL$               mail file name
  111.       $MSGCOUNT$           active message count
  112.       $N$                  port number 0=local, 1..4
  113.       $NAME$               callers full name =- @USER@
  114.       $NO$                 literally "NO"
  115.       $NODE$               current node number
  116.       $NOMACS$             disable macros for remainder of display
  117.       $NONSTOP$            display the rest of the file non-stop
  118.       $PLAY$               playpen directory
  119.       $R$                  result filename for batches
  120.       $RED$                the color red
  121.       $SCRATCH$            scratch file name
  122.       $SYSOP$              sysop name
  123.       $TIME$               minutes left
  124.       $WHITE$              the color white
  125.       $YELLOW$             the color yellow
  126.       $YES$                literally "YES"
  127.       @BEEP@               beep speaker, control-g
  128.       @BOARDNAME@          the name of your BBS
  129.       @BPS@                estimated connect bps
  130.       @BYTELIMIT@          bytes allowed from PWRD file
  131.       @BYTESLEFT@          remaining bytes available for download for that
  132.                            day
  133.       @CITY@               city and state of caller (all caps)
  134.       @CLS@                clear screen
  135.       @DATAPHONE@          caller's business/data phone number
  136.       @DAYBYTES@           bytes downloaded so far that day
  137.       @DLBYTES@            total bytes downloaded - all calls
  138.       @DLFILES@            total files downloaded - all calls
  139.       @EVENT@              time of next scheduled event
  140.       @EXPDATE@            subscription expiration date
  141.       @FIRST@              first name of the user (first letter capitalized)
  142.       @HOMEPHONE@          caller voice phone number
  143.       @INCONF@             conference the caller is currently in
  144.       @LASTDATEON@         last date on (mm-dd-yy format)
  145.       @LASTTIMEON@         last time on (hh:mm format)
  146.       @MORE@               force a "MORE" prompt
  147.       @NUMCALLS@           total number of callers in system
  148.       @NUMTIMESON@         umber of times on system
  149.       @SECURITY@           users current security level including conf. add.
  150.       @SYSDATE@            host date in (mm-dd-yy format)
  151.       @SYSTIME@            host system in (hh:mm format)
  152.       @TIMELEFT@           time remaining that call incl. all credits, etc.
  153.       @TIMELIMIT@          time allowed from PWRD file
  154.       @TIMEUSED@           minutes used since logon
  155.       @UPBYTES@            total bytes uploaded - all calls
  156.       @UPFILES@            total files uploaded - all calls
  157.       @USER@               complete name of the caller (first & last - all
  158.                            caps)
  159.       @WAIT@               force a "press enter to continue" prompt
  160.       @X                   pcboard 14.5-compatible color codes
  161.  
  162.